/* 上传图片
 url：上传的url地址
 data：上传的文件
 callback：上传成功返回地址
 */
function uploadFile(picdata, callback) {

    api.ajax({
        url: Upload_pic, //阿里云
        method: 'post',
        timeout: 30,
        dataType: 'json',
        returnAll: false,
        data: {
            values: {
                uid: $api.getStorage('cfnetppuid'),
            },
            files: {
                Filedata: picdata,
            }
        }

    }, function (ret, err) {
        if (ret) {
            console.log(JSON.stringify(ret));
            if (ret.retmsg == "succ") {
                callback(ret.fileurl);
            } else {
                alert("上传失败");
            }
        } else {
            // api.alert({
            //   msg : ('错误码：' + err.code + '；错误信息：' + err.msg + '；网络状态码：' + err.statusCode)
            // });
        }
    });

}

/* 上传附件（百度云）
 url：上传的url地址
 data：上传的文件
 callback：上传成功返回地址
 */

function UploadFile_baidu(filedata, callback) {

    api.ajax({
        url: Upload_baidu, //
        method: 'post',
        timeout: 30,
        dataType: 'json',
        returnAll: false,
        data: {
            values: {
                uid: $api.getStorage('cfnetppuid'),
            },
            files: {
                file: filedata,
            },

        }

    }, function (ret, err) {
        if (ret) {
//	 alert(JSON.stringify(ret));
            if (ret.status == 1) {

                callback(ret);
            } else {
                alert("上传失败");
            }

        } else {

        }
    });

}

/* 上传附件（阿里云）
 url：上传的url地址
 data：上传的文件
 callback：上传成功返回地址
 */

function UploadFile_ali(url, filedata, callback) {

    api.ajax({
        url: url, //
        method: 'post',
        timeout: 30,
        dataType: 'json',
        returnAll: false,
        data: {
            values: {
                uid: $api.getStorage('cfnetppuid'),
            },
            files: {
                file: filedata,
            },

        }

    }, function (ret, err) {
        if (ret) {
            if (ret.status == 1) {
                callback(ret);
            } else {
                alert("上传失败");
            }
        } else {
        }
    });

}

function UploadFile_baidu(type, filedata, callback) {
    callback("");
    return;

    var time=dateFtt("yyyyMMdd/",new Date());
    var suffix=filedata.substring(filedata.lastIndexOf("."),filedata.length);
    var dir;
    if(type==="video")
        dir="video/"+time+"app-"+Date.now()+suffix;
    else {
        dir="img/"+time+"app-"+Date.now()+suffix;
    }
    var bos = api.require('baiduYunBos');
    bos.init();
    bos.putObject({
        bucket: "cfnet",
        objectKey: dir,
        filePath: filedata
    }, function (ret, err) {
        if(ret.eventType==="onComplete"){
            ret.url="http://bos.cfnet.org.cn/"+dir;
            callback(ret);
        }else if(ret.eventType==="onError"){
            callback("");
        }
    });
    // const config = {
    //     endpoint: "http://bj.bcebos.com",         //传入Bucket所在区域域名
    //     credentials: {
    //         ak: "de006454074b11e98a6865decb2d70c1",         //您的AccessKey
    //         sk: "dc12f571c427488b8b43565c129f822c"       //您的SecretAccessKey
    //     }
    // };
    // let bucket = 'cfnet';
    // let key = "111.mp4";
    // let client = new baidubce.sdk.BosClient(config);
    // client.putObjectFromString(bucket, key, 'hello world')
    //     .then(response => JSON.stringify(response))    // 成功
    //     .catch(error => console.error(error));      // 失败
    // var form = new FormData();
    // form.append("file", filedata);
    // api.ajax({
    //     url: url, //
    //     method: 'post',
    //      timeout : 30,
    //     dataType: 'json',
    //     returnAll: false,
    //     report: true,
    //     data: {
    //         files: {
    //             file: filedata,
    //         },
    //     },
    // }, function (ret, err) {
    //     console.log(JSON.stringify(ret));
    //     // if (ret) {
    //     // 	if (ret.status == 1) {
    //     // 		callback(ret);
    //     // 	} else {
    //     // 		callback("")
    //     // 	}
    //     // } else {
    //     // 	callback("")
    //     // }
    //
    // });
}

function dateFtt(fmt, date) { //author: meizz
    var o = {
        "M+": date.getMonth() + 1,     //月份
        "d+": date.getDate(),     //日
        "h+": date.getHours(),     //小时
        "m+": date.getMinutes(),     //分
        "s+": date.getSeconds(),     //秒
        "q+": Math.floor((date.getMonth() + 3) / 3), //季度
        "S": date.getMilliseconds()    //毫秒
    };
    if (/(y+)/.test(fmt))
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt))
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
}

// 生成guid,主要用于生成随机文件名
function NewGuid() {
    function S4() {
        return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
    }

    return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());
}

// 获取当前的时间，拼接成2015-11-09这样的格式，主要用于对图片进行时间分类
function getNowFormatDate() {
    var date = new Date();
    var seperator1 = "-";
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var strDate = date.getDate();
    if (month >= 1 && month <= 9) {
        month = "0" + month;
    }
    if (strDate >= 0 && strDate <= 9) {
        strDate = "0" + strDate;
    }
    var currentdate = year + seperator1 + month + seperator1 + strDate
    return currentdate;
}

/* 图片压缩
 imgsrc：源图片的路径
 quality：图片压缩质量，一般建议0.5
 scale：图片压缩比例，也是建议0.5
 ext：源图片拓展名
 callback：转换成功之后回调函数
 */
function imgCompress(imgsrc, quality, scale, callback) {
    // 压缩文件的保存目录
    var savePath = api.cacheDir + "/" + getNowFormatDate() + "/";
    // 压缩文件生成的随机文件名称
    var savename = NewGuid() + ".png";
    var imageFilter = api.require('imageFilter');
    imageFilter.compress({
        img: imgsrc,
        quality: quality,
        scale: quality,
        save: {
            album: false,
            imgPath: savePath,
            imgName: savename
        }
    }, function (ret, err) {
        if (ret) {
            callback(savePath + savename);
        } else {
//
            alert("压缩图片" + JSON.stringify(err));
        }
    });
}